package com.jk.vehicle.mini.swagger.config;

import java.util.ArrayList;
import java.util.List;
import org.springframework.boot.context.properties.ConfigurationProperties;

@ConfigurationProperties("jxstjh.common.swagger")
public class SwaggerProperties {
    private String basePackage = "";
    private List<String> basePath = new ArrayList();
    private List<String> excludePath = new ArrayList();
    private String title = "";
    private String description = "";
    private String version = "";
    private String license = "";
    private String licenseUrl = "";
    private String termsOfServiceUrl = "";
    private String host = "";
    private SwaggerProperties.Contact contact = new SwaggerProperties.Contact();

    public SwaggerProperties() {
    }

    public String getBasePackage() {
        return this.basePackage;
    }

    public List<String> getBasePath() {
        return this.basePath;
    }

    public List<String> getExcludePath() {
        return this.excludePath;
    }

    public String getTitle() {
        return this.title;
    }

    public String getDescription() {
        return this.description;
    }

    public String getVersion() {
        return this.version;
    }

    public String getLicense() {
        return this.license;
    }

    public String getLicenseUrl() {
        return this.licenseUrl;
    }

    public String getTermsOfServiceUrl() {
        return this.termsOfServiceUrl;
    }

    public String getHost() {
        return this.host;
    }

    public SwaggerProperties.Contact getContact() {
        return this.contact;
    }

    public void setBasePackage(String basePackage) {
        this.basePackage = basePackage;
    }

    public void setBasePath(List<String> basePath) {
        this.basePath = basePath;
    }

    public void setExcludePath(List<String> excludePath) {
        this.excludePath = excludePath;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public void setVersion(String version) {
        this.version = version;
    }

    public void setLicense(String license) {
        this.license = license;
    }

    public void setLicenseUrl(String licenseUrl) {
        this.licenseUrl = licenseUrl;
    }

    public void setTermsOfServiceUrl(String termsOfServiceUrl) {
        this.termsOfServiceUrl = termsOfServiceUrl;
    }

    public void setHost(String host) {
        this.host = host;
    }

    public void setContact(SwaggerProperties.Contact contact) {
        this.contact = contact;
    }

    public boolean equals(Object o) {
        if (o == this) {
            return true;
        } else if (!(o instanceof SwaggerProperties)) {
            return false;
        } else {
            SwaggerProperties other = (SwaggerProperties) o;
            if (!other.canEqual(this)) {
                return false;
            } else {
                label143:
                {
                    Object this$basePackage = this.getBasePackage();
                    Object other$basePackage = other.getBasePackage();
                    if (this$basePackage == null) {
                        if (other$basePackage == null) {
                            break label143;
                        }
                    } else if (this$basePackage.equals(other$basePackage)) {
                        break label143;
                    }

                    return false;
                }

                Object this$basePath = this.getBasePath();
                Object other$basePath = other.getBasePath();
                if (this$basePath == null) {
                    if (other$basePath != null) {
                        return false;
                    }
                } else if (!this$basePath.equals(other$basePath)) {
                    return false;
                }

                Object this$excludePath = this.getExcludePath();
                Object other$excludePath = other.getExcludePath();
                if (this$excludePath == null) {
                    if (other$excludePath != null) {
                        return false;
                    }
                } else if (!this$excludePath.equals(other$excludePath)) {
                    return false;
                }

                label122:
                {
                    Object this$title = this.getTitle();
                    Object other$title = other.getTitle();
                    if (this$title == null) {
                        if (other$title == null) {
                            break label122;
                        }
                    } else if (this$title.equals(other$title)) {
                        break label122;
                    }

                    return false;
                }

                label115:
                {
                    Object this$description = this.getDescription();
                    Object other$description = other.getDescription();
                    if (this$description == null) {
                        if (other$description == null) {
                            break label115;
                        }
                    } else if (this$description.equals(other$description)) {
                        break label115;
                    }

                    return false;
                }

                Object this$version = this.getVersion();
                Object other$version = other.getVersion();
                if (this$version == null) {
                    if (other$version != null) {
                        return false;
                    }
                } else if (!this$version.equals(other$version)) {
                    return false;
                }

                Object this$license = this.getLicense();
                Object other$license = other.getLicense();
                if (this$license == null) {
                    if (other$license != null) {
                        return false;
                    }
                } else if (!this$license.equals(other$license)) {
                    return false;
                }

                label94:
                {
                    Object this$licenseUrl = this.getLicenseUrl();
                    Object other$licenseUrl = other.getLicenseUrl();
                    if (this$licenseUrl == null) {
                        if (other$licenseUrl == null) {
                            break label94;
                        }
                    } else if (this$licenseUrl.equals(other$licenseUrl)) {
                        break label94;
                    }

                    return false;
                }

                label87:
                {
                    Object this$termsOfServiceUrl = this.getTermsOfServiceUrl();
                    Object other$termsOfServiceUrl = other.getTermsOfServiceUrl();
                    if (this$termsOfServiceUrl == null) {
                        if (other$termsOfServiceUrl == null) {
                            break label87;
                        }
                    } else if (this$termsOfServiceUrl.equals(other$termsOfServiceUrl)) {
                        break label87;
                    }

                    return false;
                }

                Object this$host = this.getHost();
                Object other$host = other.getHost();
                if (this$host == null) {
                    if (other$host != null) {
                        return false;
                    }
                } else if (!this$host.equals(other$host)) {
                    return false;
                }

                Object this$contact = this.getContact();
                Object other$contact = other.getContact();
                if (this$contact == null) {
                    if (other$contact != null) {
                        return false;
                    }
                } else if (!this$contact.equals(other$contact)) {
                    return false;
                }

                return true;
            }
        }
    }

    protected boolean canEqual(Object other) {
        return other instanceof SwaggerProperties;
    }

    public int hashCode() {
        Boolean PRIME = true;
        int result = 1;
        Object $basePackage = this.getBasePackage();
        result = result * 59 + ($basePackage == null ? 43 : $basePackage.hashCode());
        Object $basePath = this.getBasePath();
        result = result * 59 + ($basePath == null ? 43 : $basePath.hashCode());
        Object $excludePath = this.getExcludePath();
        result = result * 59 + ($excludePath == null ? 43 : $excludePath.hashCode());
        Object $title = this.getTitle();
        result = result * 59 + ($title == null ? 43 : $title.hashCode());
        Object $description = this.getDescription();
        result = result * 59 + ($description == null ? 43 : $description.hashCode());
        Object $version = this.getVersion();
        result = result * 59 + ($version == null ? 43 : $version.hashCode());
        Object $license = this.getLicense();
        result = result * 59 + ($license == null ? 43 : $license.hashCode());
        Object $licenseUrl = this.getLicenseUrl();
        result = result * 59 + ($licenseUrl == null ? 43 : $licenseUrl.hashCode());
        Object $termsOfServiceUrl = this.getTermsOfServiceUrl();
        result = result * 59 + ($termsOfServiceUrl == null ? 43 : $termsOfServiceUrl.hashCode());
        Object $host = this.getHost();
        result = result * 59 + ($host == null ? 43 : $host.hashCode());
        Object $contact = this.getContact();
        result = result * 59 + ($contact == null ? 43 : $contact.hashCode());
        return result;
    }

    public String toString() {
        return "SwaggerProperties(basePackage=" + this.getBasePackage() + ", basePath=" + this.getBasePath() + ", excludePath=" + this.getExcludePath() + ", title=" + this.getTitle() + ", description=" + this.getDescription() + ", version=" + this.getVersion() + ", license=" + this.getLicense() + ", licenseUrl=" + this.getLicenseUrl() + ", termsOfServiceUrl=" + this.getTermsOfServiceUrl() + ", host=" + this.getHost() + ", contact=" + this.getContact() + ")";
    }

    public static class Contact {
        private String name = "";
        private String url = "";
        private String email = "";

        public String getName() {
            return this.name;
        }

        public String getUrl() {
            return this.url;
        }

        public String getEmail() {
            return this.email;
        }

        public void setName(String name) {
            this.name = name;
        }

        public void setUrl(String url) {
            this.url = url;
        }

        public void setEmail(String email) {
            this.email = email;
        }

        public boolean equals(Object o) {
            if (o == this) {
                return true;
            } else if (!(o instanceof SwaggerProperties.Contact)) {
                return false;
            } else {
                SwaggerProperties.Contact other = (SwaggerProperties.Contact) o;
                if (!other.canEqual(this)) {
                    return false;
                } else {
                    label47:
                    {
                        Object this$name = this.getName();
                        Object other$name = other.getName();
                        if (this$name == null) {
                            if (other$name == null) {
                                break label47;
                            }
                        } else if (this$name.equals(other$name)) {
                            break label47;
                        }

                        return false;
                    }

                    Object this$url = this.getUrl();
                    Object other$url = other.getUrl();
                    if (this$url == null) {
                        if (other$url != null) {
                            return false;
                        }
                    } else if (!this$url.equals(other$url)) {
                        return false;
                    }

                    Object this$email = this.getEmail();
                    Object other$email = other.getEmail();
                    if (this$email == null) {
                        if (other$email != null) {
                            return false;
                        }
                    } else if (!this$email.equals(other$email)) {
                        return false;
                    }

                    return true;
                }
            }
        }

        protected boolean canEqual(Object other) {
            return other instanceof SwaggerProperties.Contact;
        }

        public int hashCode() {
            Boolean PRIME = true;
            int result = 1;
            Object $name = this.getName();
            result = result * 59 + ($name == null ? 43 : $name.hashCode());
            Object $url = this.getUrl();
            result = result * 59 + ($url == null ? 43 : $url.hashCode());
            Object $email = this.getEmail();
            result = result * 59 + ($email == null ? 43 : $email.hashCode());
            return result;
        }

        public String toString() {
            return "SwaggerProperties.Contact(name=" + this.getName() + ", url=" + this.getUrl() + ", email=" + this.getEmail() + ")";
        }

        public Contact() {
        }
    }
}
